--------------------------------------------------------------------- Dostawca Microsoft(R) SQL Server OLE DB Provider 7.00.459 plik Readme --------------------------------------------------------------------- (c) 1998 Microsoft Corporation. Wszelkie prawa zastrzeżone. Ten dokument zawiera informacje z ostatniej chwili lub inne informacje uzupełniające dokumentację programu Microsoft SQL Server OLE DB Provider. ----------- SPIS TREŚCI ----------- 1. OPIS PRODUKTU 2. UWAGI TECHNICZNE ---------------- 1. OPIS PRODUKTU ---------------- Program Microsoft SQL Server OLE DB Provider, SQLOLEDB, zapewnia interfejs dostępu do jednego lub kilku serwerów SQL. ------------------- 2. UWAGI TECHNICZNE ------------------- 2.1 Zmiany właściwości SQLOLEDB Warto zwrócić uwagę na poniższe zmiany we właściwościach SQLOLEDB: * Właściwość DBPROP_INIT_DATASOURCE jest teraz wykorzystywana do określenia nazwy serwera, na którym działa program SQL Server. Nie jest już używana do określenia nazwy bazy danych. * Właściwość DBPROP_INIT_CATALOG jest teraz wykorzystywana do określenia początkowej bazy danych. * Właściwość DBPROP_INIT_LOCATION nie jest już obsługiwana. * Właściwość DBPROP_AUTH_INTEGRATED jest teraz obsługiwana. Jeśli właściwość DBPROP_AUTH_INTEGRATED jest ustawiona na 'SSPI', zostaną użyte zintegrowane zabezpieczenia. Jeśli zostanie ustawiona na wskaźnik Null BSTR, zostaną użyte zabezpieczenia serwera SQL. * Właściwość SSPROP_AUTH_TRUSTEDCONNECTION nie jest już obsługiwana. * Specyficzna dla dostawcy właściwość DBPROP_INIT_MODE nie jest już obsługiwana. 2.2 Jeśli nastąpi próba wykonania polecenia na połączeniu, które ma nie zrealizowane polecenie, dostawca SQLOLEDB tworzy nowe połączenie do wykonania nowego polecenia, jeśli spełnione są następujące warunki: * Właściwość DBPROP_MULTIPLECONNECTIONS jest ustawiona na VARIANT_TRUE. * Pierwsze polecenie nie generuje wierszy lub nie używa kursora serwera. Jeśli istnieje aktywna transakcja w połączeniu, próba wykonania drugiego polecenia zwróci wartość E_FAIL. Jeśli nie istnieje aktywna transakcja ale właściwość DBPROP_MULTIPLECONNECTIONS jest równa VARIANT_FALSE, próba wykonania drugiego polecenia zwróci wartość DB_E_OBJECTOPEN. Transakcje i blokady są zarządzane przez serwer SQL przez podstawy połączenia. Jeśli drugie połączenie jest utworzone, polecenia w odrębnym połączeniu nie współużytkują blokad. Należy zwrócić uwagę, czy polecenie nie blokuje innych poleceń utrzymując blokady na wierszach wymaganych przez inne polecenie. 2.3 W celu zwiększenia wydajności przez ograniczenie ruchu w sieci, dostawca SQLOLEDB nie pobiera automatycznie informacji o parametrach, jeśli nie zostanie wywołana metoda ICommandWithParameters::GetParameterInfo lub ICommandPrepare::Prepare przed wykonaniem polecenia. Oznacza to że dostawca SQLOLEDB nie wykonuje automatycznie: * Sprawdzania poprawności typu danych określonych w metodzie ICommandWithParameters::SetParameterInfo. * Mapowania z typu danych DBTYPE określonego w informacji podanej w informacji wiążącej akcesora z poprawnym typem danych SQL dla parametru. Aplikacja może otrzymać błąd lub utracić precyzji dla każdej z tych metod, jeśli określone typy danych nie są zgodne z typami danych SQL dla parametrów. Aby zapewnić że to nie nastąpi, aplikacja powinna: * Podczas kodowania parametrów dla ICommandWithParameters::SetParameterInfo, upewnić się że wartość pwszDataSourceType odpowiada typowi danych SQL dla parametru. * Podczas kodowania akcesora, upewnić się że wartość DBTYPE jest powiązana z parametrem który ma ten sam typ danych SQL dla parametru. * Wywołać w kodzie aplikacji metodę ICommandWithParameters::GetParameterInfo, aby dostawca mógł dynamicznie otrzymać typy danych SQL dla parametrów. Spowoduje to dodatkową komunikację z serwerem za pośrednictwem sieci. 2.4 Właściwość DBPROP_CHANGEINSERTEDROWS może być ustawiona tylko na VARIANT_TRUE, jeśli zestaw wierszy używa kursora sterowanego przez zestaw rekordów.